<html>
  <head></head>
  <body>
    <p>实现一个map方法</p>

    <script>
      Array.prototype.myMap = function(callback){
        // 如果不是数组，直接返回
        if(!this instanceof Array) return false

        const arr = []

        // 在myMap方法内部尽量不使用forEach、map等方法 
        for(let index = 0; index < this.length; index++){
          const res = callback(this[index], index)
          arr.push (res)
        }
        return arr
      }

      var arr = [1, 2, 3, 4]
      var newArr = arr.myMap(function (item, index) {
        item *= 2
        return item
      })
      console.log(newArr)
    </script>
  </body>
</html>
